home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Turnbull China Bikeride
/
Turnbull China Bikeride - Disc 2.iso
/
STUTTGART
/
EMULATOR
/
OLD
/
CPCEM052
/
!CPCEmu
/
!Help
next >
Wrap
Text File
|
1995-11-25
|
6KB
|
151 lines
________________________________________________________________________________
CPC-Emulator V0.50 / 25-11-95
programmed in 1994-1995 by Andreas Stroiczek
(AMSDOS-ROM & system-ROMs are copyright by AMSTRAD)
* special greetinx to Patrick Hinrichs and Eduard Pfarr *
________________________________________________________________________________
This program emulates an AMSTRAD CPC (Colour Personal Computer). It's a
Z80/4MHz-based 8-bit-computer with high resolution colour-graphix and
disk-drive.
If you don't know this machine try this:
- start the emulator & click on the CPC-icon onto the iconbar
- 'insert' a disk-image in drive A
- type CAT to get the directory
- to start some programs just type RUN"program.xyz"
Features
~~~~~~~~
+ fast Z80-emulation
+ real CRTC-emulation (!) (for splittings and fullscreen)
+ 128k RAM
+ 8 UPPER-ROMs (ROM 7 must be AMSDOS-ROM, ROM 0 is the BASIC-ROM)
(note: "fastAMSDOS" is a modified version of AMSDOS, Byte &C5D4 and &C602 are
set to &01)
+ disk-emulation provides different formats
- there are still many bugs
- drive B is missing
- sound is missing
The next release will contain a better CRTC & FDC-emulation.
Mouse & Keys
~~~~~~~~~~~~
In fullscreen-mode your have a menu at the top of the screen. You can use
the menu-button of your mouse to switch the menu on/off. You can get the
list of DiskImages by pressing the menu-button while your pointer is on
"DriveA{side0}{--}". You may also change the options (side-selection and
write-protection) with select- and adjust-button.
If you don't wanna use your mouse, you may use following keys:
<F1>: insert a disk-image in drive A
<SHIFT><F1>: turn disk in drive A
<CTRL><F1>: protect/deprotect disk in drive A
<F2>: insert a disk-image in drive B (doesn't work yet)
<SHIFT><F2>: turn disk in drive B (doesn't work yet)
<CTRL><F2>: protect/deprotect disk in drive B (doesn't work yet)
<SHIFT><F3>: Joystick-emulation on/off
<SHIFT><F4>: make screen-shots (you'll find them in !CPCEmu.screenShot)
<SHIFT><F8>: reset
<CTRL><F10>: quit
With Joystick-emulation ON, the emulator uses following keys for the stick:
Cursor-Keys: up/down/left/right
right Ctrl: fire 2 (this is the main joystick-button)
right Alt: fire 1
For more information about the CPC & CPC-Emulator-keyboard see the Draw-file
"KeyInfo" in !CPCEmu.Keys.
How to get DiskImages from your old CPC
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Just connect the CPC with your Acorn-Computer via parallel-port as following:
CPC Acorn
2 D0 2 D0
3 D1 3 D1
4 D2 4 D2
5 D3 5 D3
6 D4 6 D4
7 D5 7 D5
8 D6 8 D6
9 GND 18-25 GND
You'll find the CPC-tranfer-program in !CPCEmu.!CPCTrans.CPC. You have to
transfer this CPC-program to your CPC.
After everything is connected you should start !CPCTrans first(!) and after that
start the CPC-pendant ARCTRANS.BAS on your CPC.
The default-parameters of ARCTRANS.BAS are 42 Tracks, DATA-format (&C1-&C9),
512 byte sector-size (2) and soure-drive B (1). You have to change this if
necessary (i.e. take &41/&49 for first sector/last sector if you want to
transfer a disk formatted with SYSTEM-format).
If the transfer is completed successfully you'll find the generated DiskImage
in !CPCEmu.!CPCTrans named "newDisk". To use this image-file just copy it into
!CPCEmu.DISKs .
Note: The transfer works well on my Risc PC. Maybe it won't work correctly on
slower machines. You may set the variable "transferRate" in ARCTRANS.BAS
to a higher value than 92 if your machine responses with checksum-errors.
DiskImage specification
~~~~~~~~~~~~~~~~~~~~~~~
First, there is a 128 byte header. You may change the number of tracks, but the
size of the DiskImage has to be 128 + 2 * 6144 * <number of tracks>.
43 50 43 2D 45 6D 75 6C 61 74 6F 72 30 2E 35 30 CPC-Emulator0.50
44 69 73 6B 49 6D 61 67 65 56 34 00 00 00 00 00 DiskImageV4.....
34 30 54 72 61 63 6B 73 00 00 00 00 00 00 00 00 40Tracks........
44 6F 75 62 6C 65 53 69 64 65 64 00 00 00 00 00 DoubleSided.....
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 ................
This is followed by the tracks. Each track is 2 * 6144 bytes long, 6144 bytes
for side 0 and 6144 bytes for side 1 of the CPC-disk.
One side of a track looks like following datas:
Track start (one side, 6144 bytes):
49 4E 44 58 49 44 46 44 00 00 C1 02 00 00 00 00 INDXIDFD........
00 00 00 00 00 00 00 00 | | | | 44 41 54 41 |...|...|...DATA
00 45 58 .. .. .. | | | | | | | |
| | | size 2 (512 bytes) | | | |
| | sector &C1 | | | data-word
| head 0 | | ID-field data
track 0 | ID-field-word
index-word
The track starts with the "INDX"-mark followed by "IDFD" followed by the ID-data
for the first sector on track (4 byte ID-field + 16 reserved bytes) followed by
the "DATA"-mark followed by the sector-datas (i.e. 512 bytes). After that the
next sector on track starts exactly like the first one. The only difference is
that it starts up with four 00-bytes instead of the "INDX"-mark. The rest of
this track is set to 00.
________________________________________________________________________________
Send your improvements & suggestions to:
Andreas Stroiczek
Zum Kindergarten 5
32427 Minden
Germany
Please contact me, if you have some ARM-source-codes about sound or disk-drive.
Is there anybody who want to write a CPCFS for CPC-disks & diskImages?
________________________________________________________________________________